Machine Knowledge Maniputation Issues in Parallel Compilers
نویسندگان
چکیده
Parallel compilers need detail architectural knowledge about the target machines to optimize user programs. The knowledge is needed in order to realize the potential parallelism provided by the hardware and to match the program parallelism with the machine parallelism. In most parallel compilers, the architectural infonnation of the target machine are blurred into the control structures of the compilers. Consequently, these parallel compilers are inflexible and substantial efforts are needed to modify them or to port them to different machines. A solution to this problem is to separate the hardware features from the knowledge for the program optimization and describe the later based on these features. In this way, the control of parallel compilers relies explicitly on the computational model that is described by machine features rather than the hard-coded heuristics. High degree of flexibility. portability and knowledge sharing can be achieved among different target machines. In this paper. a parallel machine knowledge representation scheme that features hierarchical structure and object oriented approach is presented. Under the scheme, machine features are represented as objects and are organized into hierarchical structures based on relationship between the feature objects. An abstraction process which translates basic machine features into different levels of abstraction is presented. Optimizing compilers can select the levels that suit its objectives and tasks most to work with. The parallel machine knowledge manipulation system is implemented in Prolog and includes mechanism for interactive feature specification. feature classification, and support for reasoning based on the features. MACHINE KNOWLEDGE MANIPULATION ISSUES FOR PARALLEL COMPILERS Ko·Yang Wang Department of Computer Sciences, Purdue University, West Lafayellc, IN 47907. Dennis Gannon Department of Computer Science, Indiana University, Bloomington, IN 47405. Piyush Mehrotra leASE, NASA Langley Research Cenler. Hampton, VA 23665.
منابع مشابه
A Framework for Intelligent Parallel Compilers
In this paper, we discuss obstacles for building intelligent parallel compilers and directions for improvements. A framework for the systematic program analysis and intelligent program restructuring control is presented. Methodologies for applying this framework to build optimizing parallel compilers, including heuristic-guided state-space search and planning, machine knowledge manipulation, sy...
متن کاملA fuzzy mixed-integer goal programming model for a parallel machine scheduling problem with sequence-dependent setup times and release dates
This paper presents a new mixed-integer goal programming (MIGP) model for a parallel machine scheduling problem with sequence-dependent setup times and release dates. Two objectives are considered in the model to minimize the total weighted flow time and the total weighted tardiness simultaneously. Due to the com-plexity of the above model and uncertainty involved in real-world scheduling probl...
متن کاملParallel Programming: Is s ues and Questions
T he parallel processing issue must be addressed on three levels: (1) Architectural issues include how to organize and implement computers that have multiple processing elements. (2) Software issues include applications and sys tem software. (3) Algorithm issues involve how io design parallel algorithms. l Architects of parallel-processing s y s tems struggle with important trade-offs. Their ch...
متن کاملA Formal Approach to Parallelizing Compilers
This paper describes parallelizing compilers which allow programmers to tune parallel program performance through an interactive dialog. Programmers specify language constructs that define sequential processes, such as assignment or for-loops, to be used as units of computation, while the compiler discovers the parallelism existent in the source program in terms of these units. Programmers may ...
متن کاملA Communication Backend for Parallel Language Compilers
Generating good communication code is an important issue for all compilers targeting parallel or distributed systems. However, different compilers for the same parallel system usually implement the communication generation routines (e.g., message buffer packing) independently and from scratch. As a result, these compilers either pursue a simple approach (calling a standard runtime library), whi...
متن کاملذخیره در منابع من
با ذخیره ی این منبع در منابع من، دسترسی به آن را برای استفاده های بعدی آسان تر کنید
عنوان ژورنال:
دوره شماره
صفحات -
تاریخ انتشار 2013